1. Field of the Invention
The present invention relates to a system, method and program for distributed event detection, in which complex events are detected through distributed event detection. The present invention also relates to a broker node used in a distributed event detection system.
2. Description of the Related Art
Japanese Unexamined Patent Application, First Publication, No. 2006-309701 (p. 19 and FIGS. 1 and 2) discloses an example of an event processing system. In a first embodiment thereof, devices 105a to 105f detect events, which will be collected to a process server 104a via a context-dependent distributor 103. The process server 104a has a distribution rule 107 which is previously determined by an event processing distribution control section 101. Therefore, the events detected by the devices 105a to 105f are collected to the process server 104a according to the distribution rule 107.
The process server 104a has a predetermined processing rule 108a. For example, the process server 104a executes processes according to a rule that “an application will be notified upon detection of detecting signals from radio frequency identification (RFID) tags of all components”. The process server 104a notifies events to an application 106a when the rule is followed.
For example, Japanese Unexamined Patent Application, First Publication, No. 2004-348680 (paragraphs [0042] to [0047] and FIGS. 1 and 2) discloses a complex event notification system, as a related art. The system disclosed in JP 2004-348680 A receives subscribe information from a subscriber application. If the received subscribe information is detected to be a complex event, the system decomposes the complex event into sub-events. When it is determined that all publish information required by the subscribe information has been collected, the system disclosed in JP 2004-348680 A notifies a designated destination of the collected publish information.
The systems disclosed in JP 2006-309701 A and JP 2004-348680 A, however, have a problem of redundant occupation of links at the side of a server. The above systems process the events in a server-client system, in which one processing rule is processed in one process server. Traffic thus focuses on the server in these systems.
For example, in the system disclosed in JP 2006-309701 A, the events detected by the devices 105a to 105f are collected to the process server 104a and the traffic focuses on a link connected to the server.
As an exemplary device, component D=(component A, component B, and component C) will be considered in which components A to C are elements. These components may generate events in an unsynchronized manner. For example, the device may have an event traffic characteristic that the component A generates one event per second, the component B generates one event per minute and the component C generates one event per hour. In this case, an event occurs once per hour in the component D while 3,600 events occur in the component A and 60 events occur in the component B.
In order to detect an event of the component D in this case, it is only required to notify detection of the first events of the components A and B. Accordingly, the remaining event traffic redundantly occupies the links around the server. The redundantly occupied links may increase as the number of processing rules belonging to the process server 104a increases.